package com.renjiyue.Day2;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test01 {
    //把集合中的 3 移除
    public static void main(String[] args) {
        //12,3,3,65,0,3,8,3
        List list = new ArrayList();
        list.add(12);
        list.add(3);
        list.add(3);
        list.add(65);
        list.add(0);
        list.add(3);
        list.add(8);
        list.add(3);
        System.out.println(list);
        //while ： 先判断是否存在3 ， 如果存在，则删除
//        while (list.contains(3)){
//            list.remove(new Integer(3));
//        }
        // ConcurrentModificationException: 快速失败 , 正在遍历的过程中，移除了元素，会立刻ConcurrentModificationException抛出异常
//        for (Object o : list){
//            if(o.equals(3)){
//                list.remove(o);
//            }
//        }
          //在移除元素时，会改变集合的索引
//        for (int i = 0; i < list.size(); i++) {
//            if(list.get(i).equals(3)){
//                list.remove(list.get(i));
//            }
//        }

        //迭代器： 遍历集合
        Iterator iterator = list.iterator();
        while (iterator.hasNext()){
            Object o = iterator.next();
            if(o.equals(3)){
                iterator.remove();
            }
        }




        System.out.println(list);
    }
}
